#ifndef	__UASSPRITEPOOL_H__
#define	__UASSPRITEPOOL_H__

#include"UASSprite.h"


/**
	We temp enum all sprite resource we can load.
*/
enum ESpriteFileIdx
{
	ESFI_GANGSTAR_MAN,
	ESFI_AOW_HUD,
	ESFI_ICEAGE_DDS,
	ESFI_MAX,
};


/**
	If we new a AUSSprite instance once we use it, code running speed will slow.
	And the same resource will use multiple places memory.
	So we create SpritePool to manage sprite pointers.
	When we need one sprite, we get it from the pool.
*/
class UASSpritePool
{
protected:
	vector<UASSprite*> _spriteList;
	//UASSprite* const DoGetSprite(string imageFileName,string spriteFileName);

public:
	UASSpritePool();
	~UASSpritePool();

	UASSprite* const GetSpriteById(ESpriteFileIdx spriteId) const;
};

#endif	//	__UASSPRITEPOOL_H__